iT邦幫忙

2023 iThome 鐵人賽

0
Software Development

深入淺出設計模式 - 使用 C++系列 第 31

《軟體工程篇 - 3》 — 軟體工程的方法論 (Methodology)

  • 分享至 

  • xImage
  •  

SDLC Methodology

幾種常見的 SDLC 方法論

瀑布模型 (Waterfall)

  • 瀑布模型是最早的 SDLC 方法之一,它將軟體開發過程劃分為一系列嚴格和線性的階段
  • 階段
    • 需求分析
    • 系統設計
    • 實現
    • 測試
    • 部署
    • 維護
  • 優缺點
    • 優點: 易於理解,管理相對簡單
    • 缺點: 不適合需求變更頻繁的項目,缺乏靈活性。

迭代和增量模型 (Iterative and incremental)

  • 這種模型將軟體開發過程劃分為小的迭代,每次迭代都會產生可運行的產品
  • 階段
    • 初始計劃
    • 迭代開發
    • 增量實現
  • 優缺點
    • 優點: 靈活,能快速適應變更
    • 缺點: 需要嚴格的管理和計劃

螺旋開發 (Spiral)

  • 螺旋模型結合了瀑布模型的線性和迭代的特點,並在每個迭代中加入風險分析
  • 階段
    • 計劃
    • 風險分析
    • 工程
    • 評估
  • 優缺點
    • 優點: 高度適應性,能有效管理風險。
    • 缺點: 需要高度的專業知識,成本較高。

敏捷開發 (Agile)

  • 敏捷開發是一種軟體開發方法論,強調靈活性、迭代和與客戶的緊密合作
  • 它是一種思維方式,而非一個具體的工具或框架

基本原則

  • 客戶滿意度: 通過持續交付有用的軟體
  • 變更接受度: 即使在開發後期也能接受變更
  • 短週期交付: 經常性地交付可運行的產品
  • 持續合作: 與客戶和開發者持續合作
  • 簡單性: 做最少量的工作以達成目標

常用框架和方法

  • SCRUM: 是一種實現敏捷開發的框架。它提供了一個結構化的環境,用於解決複雜問題
  • Kanban
  • Lean
  • Extreme Programming (XP)

SCRUM

https://ithelp.ithome.com.tw/upload/images/20231014/20138643nJalsWDeJs.png

  • 基本元素
    • 角色: Scrum Master, Product Owner, Development Team
    • 事件: Sprint, Daily Standup, Sprint Review, Sprint Retrospective
    • 產物: Product Backlog, Sprint Backlog, Increment
  • 基本流程
    • 計劃: 創建 Product Backlog
    • 執行: 進行短週期(Sprint)的開發
    • 檢查和調整: 在 Sprint Review 和 Sprint Retrospective 中進行

敏捷開發與 SCRUM 的關聯

  • 實現方式: Scrum 是敏捷開發的一種具體實現方式
  • 價值觀和原則: Scrum 實踐了敏捷開發的核心價值觀和原則
  • 客戶參與: 在 Scrum 和敏捷開發中,客戶參與被視為關鍵元素
  • 迭代開發: Scrum 通過短週期(Sprints)實現敏捷開發的迭代原則
  • 優點: 高度靈活,快速適應變更
  • 缺點: 需要高度的客戶參與,可能缺乏文檔

Reference

  1. https://www.scrumalliance.org/ScrumRedesignDEVSite/media/ScrumAllianceMedia/Files%20and%20PDFs/VER5-scrum-framework_2020.pdf?_gl=1iv0ey8_gaNTcwMDM4MDU2LjE2OTcyOTUwMDc._ga_FQREGB3E3L*MTY5NzI5NTAwNi4xLjAuMTY5NzI5NTAwNi42MC4wLjA.

上一篇
《軟體工程篇 - 2》 — 軟體開發生命週期 (SDLC) & 安全軟體發展生命週期 (SSDLC)
下一篇
《軟體工程篇 - 4》 — 軟體工程管理的量度 (Measures / Metrics)
系列文
深入淺出設計模式 - 使用 C++37
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言